The eZ8 CPU is an extension of the Z8 CPU architecture. The eZ8 executes all Z8 instructions except the WDH (Watch Dog Timer Enable During Halt Mode). The eZ8 features new instructions and access to a larger register file.
EZ8 REGISTER SET The following is a list of the eZ8 registers used by ASEZ8: r0 ... r15 - 8-bit accumulators rr0 ... rr15 - 16-bit accumulators
EZ8 INSTRUCTION SET The following list specifies the format for each addressing mode supported by ASEZ8: #data immediate byte data addr location/branch address r0 ... r15 8-bit registers rr0 ... rr15 16-bit registers @rn or register indirect addressing (rn) @rrn or register indirect addressing (rrn) @.RR(addr) register pair indirect where addr is truncated to 4-bits and made even @addr or indirect addressing (addr) offset(rn) indexed register addressing CC condition codes The terms data, addr, and offset may all be expressions. The designation CC refers to a condition code argument. The following table contains all the valid condition codes supported by ASEZ8: f Always False - t Always True - c Carry C=1 nc No Carry C=0 z Zero Z=1 nz Non-Zero Z=0 pl Plus S=0 mi Minus S=1 ov Overflow V=1 nov No Overflow V=0 eq Equal Z=1 ne Not Equal Z=0 ge Greater Than or Equal (S XOR V)=0 lt Less Than (S XOR V)=1 gt Greater Than (Z OR (S XOR V))=0 le Less Than or Equal (Z OR (S XOR V))=1 uge Unsigned ge C=0 ult Unsigned lt C=1 ugt Unsigned gt (C=0 AND Z=0)=1 ule Unsigned le (C OR Z)=1 The following tables list all eZ8 mnemonics recognized by the ASEZ8 assembler. The designation [] refers to a required ad- dressing mode argument. (The new instructions of the eZ8 are denoted by a *) Note that not all addressing modes are valid with every instruction, refer to the eZ8 technical data for valid modes. Arithmetic Instructions adc [],[] add [],[] adcx* [],[] addx* [],[] cp [],[] cpc* [],[] cpx* [],[] cpcx* [],[] da [] mult* [] dec [] decw [] inc [] incw [] sbc [],[] sbcx* [],[] sub [],[] subx* [],[] Bit Manipulation Instructions bclr* [],[] bset* [],[] bit* [],[],[] bswap* [] ccf rcf scf tcm [],[] tcmx* [],[] tm [],[] tcx* [],[] Block Transfer Instructions ldci* [],[] ldei [],[] CPU Control Instructions atm* ccf di ei halt nop rcp scf srp [] stop wdt Load Instructions clr [] ld [],[] ldc* [],[] ldci* [],[] lde [],[] ldei [],[] ldx* [],[] ldwx* [],[] lea* [],[] pop [] popx* [] push [] pushx* [] Logical Instructions and [],[] andx* [],[] com [] or [],[] orx* [],[] xor [],[] xorx* [],[] Program Control Instructions brk* btj* [],[],[],[] btjnz* [],[],[] btjz* [],[],[] call [] djnz [],[] iret jp [] jp CC,[] jr [] jr CC,[] ret trap* [] Rotate and Shift Instructions bswap* [] rl [] rlc [] rr [] rrc [] sra [] srl* [] swap []
... Exit the ASxxxx Documentation